Skip to main content

Google Admin Directory - Users Search Operation

import { GoogleAdminDirectoryOperationName } from '@easybread/adapter-google-admin-directory';
import type { PersonSchema } from '@easybread/schemas';

async function googleAdminDirectoryUsersSearch(
breadId: string,
query: string
): Promise<{
payload: PersonSchema[];
prev: string | number;
next: string | number;
}> {
const results =
await client.invoke(GoogleAdminDirectoryOperationName.USERS_SEARCH, {
params: { query },
breadId,
pagination: {
type: 'PREV_NEXT',
page,
},
});

if (results.rawPayload.success === false) {
// handle the error
new Error('Google User Search Failed', { cause: results.rawPayload });
}

const {
payload,
pagination: { next, prev },
} = results;

// use prev and next pointers to fetch the next or the previous page.
return { payload, next, prev };
}